package com.eastfair.questionnaire.dto;

import com.eastfair.core.base.entity.Entity;
import com.eastfair.enums.SystemSourceEnum;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.*;
import lombok.experimental.Accessors;

import javax.validation.constraints.NotNull;
import javax.validation.constraints.Size;
import java.io.Serializable;
import java.util.List;

/**
 * <p>
 * 实体类
 * 问卷外部系统映射关系
 * </p>
 *
 * @author yuwx
 * @since 2021-08-18
 */
@Data
@NoArgsConstructor
@AllArgsConstructor
@Accessors(chain = true)
@ToString(callSuper = true)
@EqualsAndHashCode(callSuper = false)
@Builder
@ApiModel(value = "RelationTagDTO", description = "答案、标签映射关系")
public class RelationTagDTO extends Entity<Long> implements Serializable {

    private static final long serialVersionUID = 1L;
    public interface validateBase {}

    public interface validateGet{}

    public interface validateSave{}
    /**
     * 项目ID
     */
    @ApiModelProperty(value = "项目ID")
//    @NotNull(groups = {validateBase.class} )
    private Long projectId;
   /**
     * 系统类型
     */
    @ApiModelProperty(value = "系统类型")
    @NotNull(groups = {validateBase.class} )
    private SystemSourceEnum systemSourceEnum ;

    @ApiModelProperty(value = "答案Id")
    @NotNull(groups = {validateSave.class} )
    private Long answerId;

    @ApiModelProperty(value = "答案IdList")
    @NotNull(groups = {validateSave.class, validateGet.class} )
    private List<Long> answerIdList;

    @ApiModelProperty(value = "答案IdList分组，根据分组返回")
    private List<List<Long>> answerIdGroupList;

    @ApiModelProperty(value = "标签Id")
    private List<Long> tagIdList;


}
